package com.example.controller;

import cn.share.clientsdk.client.ShareApiClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;

/**
 * 通过ShareAPI平台获取相关的：
 *  - key(accessKey、secreKey)
 *  - 请求地址(url)
 *  - 请求方式(method)
 *  - 请求参数(requestParams)
 * @author: ljh
 */
@RestController
public class ClientSdkController {
    @Value("${share.accessKey}")
    private String accessKey; // accessKey

    @Value("${share.secreKey}")
    private String secreKey; // secreKey

    @Value("${share.url}")
    private String url; // 请求地址

    @Value("${share.method}")
    private String method; // 请求方式

    @Value("${share.requestParams}")
    private String requestParams; // 请求参数

    /**
     * 网易云音乐热门评论
     * http://localhost:9999/test
     * @return 返回网易云音乐热门评论
     */
    @GetMapping("/client")
    public String client() {
        // 获取SDK客户端
        ShareApiClient shareApiClient = new ShareApiClient(accessKey, secreKey);
        HashMap<String, String> invokeResult = null;
        String body = null;
        try {
            // 执行客户端shareApiClient
            body = shareApiClient.invokeInterface(requestParams, url, method);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return body;
    }
}
